﻿// TestCpp.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//


//// 使用 dx11.0
//#include <d3d11.h>
////#include <d3d11_1.h>			// 已包含Windows.h
//#include <DirectXCollision.h>	// 已包含DirectXMath.h
//#include <DirectXPackedVector.h>
//#include <DirectXColors.h>
//#include <d3dcompiler.h>
//#include <vector>
//#include <iostream>
//#include <sstream>
//#include <string>
//using namespace std;
//using namespace DirectX;
//#pragma comment(lib,"d3d11.lib")
//#pragma comment(lib,"d3dcompiler.lib")
//#pragma comment(lib,"dxguid.lib")
//#pragma comment(lib,"winmm.lib")
//
//#define SAFE_RELEASE(p) {if((p)){(p)->Release();}}


#include "../MyMath/CommonD3d.h"
#include "../MyMath/Vec3.h"
#include "../MyMath/Vec4.h"
#include "../MyMath/Mat4.h"
#include "../MyMath/Quaternion.h"
#include "../MyMath/Mat3.h"
#include <memory>

class TestArr {
public:
	int nums[3];
	TestArr() = default;
	TestArr(const TestArr&) = default;
	TestArr(TestArr&&) = default;

	void UpdateNums() {
		this->nums[0] = 99;
		this->nums[1] = 98;
		this->nums[2] = 11;
	}
	string ToString() {
		ostringstream oss;
		oss << this->nums[0] << "," << this->nums[1] << "," << this->nums[2] << endl;
		return oss.str();
	}
};



template <class... T> 
void f(T... args) {
	cout << sizeof...(args) << endl;
}


int main()
{
	f();        //0
	f(1, 2);    //2
	f(1, 2.5, "");    //3
}

